package com.kmxd.ams.infra.arrange.base;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import java.io.Serializable;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @author ZuoLG
 */
@Data
public class BaseBO implements Serializable {

  /** 门类配置id 关联s_archive_type表主键 */
  @Schema(description = "门类主键")
  @NotNull(message = "门类主键不能为空")
  @TableField(exist = false)
  @JsonSerialize(using = ToStringSerializer.class)
  private Long archTypeId;

  /** 所属表名 */
  @Schema(description = "所属表名")
  @TableField(exist = false)
  private String tableId;

  /** 文件ids */
  @Schema(description = "文件ids")
  @TableField(exist = false)
  private String docIds;

  @Schema(description = "盒ids")
  @TableField(exist = false)
  private String boxIds;

  @Schema(description = "案卷ids")
  @TableField(exist = false)
  private String volIds;

  @Schema(description = "项目ids")
  @TableField(exist = false)
  private String projIds;

  /** 排序字段 */
  @Schema(description = "排序字段")
  @TableField(exist = false)
  private String field;

  /** 排序方式 */
  @Schema(description = "排序方式,ascend,descend")
  @TableField(exist = false)
  private String order;

  @Schema(description = "检索字段信息")
  @TableField(exist = false)
  private String keywords;

}
